package done.easy_901_1000;

import lombok.extern.slf4j.Slf4j;
import org.junit.Test;

/**
 * 905. Sort Array By Parity
 * <p>
 * 给定一个非负整数数组 A，返回一个由 A 的所有偶数元素组成的数组，后面跟 A 的所有奇数元素。
 * 你可以返回满足此条件的任何数组作为答案。
 * <p>
 * 示例：
 * 输入：[3,1,2,4]
 * 输出：[2,4,3,1]
 * 输出 [4,2,3,1]，[2,4,1,3] 和 [4,2,1,3] 也会被接受。
 * <p>
 * 提示：
 * 1 <= A.length <= 5000
 * 0 <= A[i] <= 5000
 * 2019-03-27 7:20 AM
 **/
@Slf4j
public class SortArrayByParity {

    @SuppressWarnings("all")
    public int[] sortArrayByParity(int[] A) {
        //first
        return null;
    }

    @Test
    public void test() {
        int[] nums = new int[]{1, 2, 3, 4, 5, 6, 7, 8, 9, 0};
        log.info("result:{}", sortArrayByParity(nums));
    }
}




























/*
public int[] sortArrayByParity(int[] A) {
    if (A == null || A.length == 0) {
        return null;
    }

    // 数组开头索引
    int start = 0;

    // 数组结束索引
    int end = A.length - 1;
    int temp;

    while (start < end) {
        // 如果当前数组中的数字为基数，把当前数组中的数字跟数组最后的数字交换，
        // 并把结束的索引-1.表示下次替换的时候替换当前索引数字的上一个数字就行了，
        // 因为我已经知道最后一个数字是基数了，如果是偶数，开始索引+1，重复此步骤，
        // 知道start = end结束循环
        if (A[start]%2 == 1) {
            temp = A[end];
            A[end] = A[start];
            A[start] = temp;
            end--;
        } else {
            start++;
        }
    }
    return A;
}
*/
